package org.example.rubbish.service;

import org.example.rubbish.entity.Site;
import java.util.List;

public interface SiteService {

    /**
     * 根据ID获取站点信息
     */
    Site getSiteById(Long id);

    /**
     * 根据站点名称获取站点信息
     */
    Site getSiteByStationName(String stationName);

    /**
     * 获取所有有效的站点
     */
    List<Site> getAllActiveSites();

    /**
     * 验证终端ID（站点ID）是否有效
     */
    boolean validateTerminalId(String terminalId);

    /**
     * 根据终端ID获取站点名称
     */
    String getStationNameByTerminalId(String terminalId);

    /**
     * 根据终端ID获取完整站点信息
     */
    Site getSiteByTerminalId(String terminalId);

    /**
     * 根据终端ID获取站点代码
     */
    String getStationCodeByTerminalId(String terminalId);
}
